/**
 * BMath			
 * ---------------------------------------------------
 * By:riki			2008-10-21
 * 功能：				对数据进行基本转换，统计，等基本功能
 * ---------------------------------------------------
 * 使用方法：
 * 1、静态方法		BMath.percentFormart(current:uint,total:uint,precision:uint=100):uint
 * 2、静态方法		BMath.randRangeFloor(min:Number, max:Number):Int
 * 3、静态方法		BMath.randRangeNumber(min:Number, max:Number):Number
 * 4、静态方法		BMath.randRangeInt(min:Number, max:Number):Int
 *  
 */
package newx.utils
{
	public class BMath
	{
		public function BMath()
		{
		}
		
		/**
         * 百分比格式化.用于进度类的计算
         * @param current    当前量
         * @param total      总量
         * @param precision  精度.默认值100.可选;
         */
		public static function percentFormart(current:uint,total:uint,precision:uint=100):uint
		{
		    var reNum:uint;
		    if(total<=0)
		    {
		        return null;
		    }
		    reNum = Math.floor(current/total*precision);
		    return reNum;
		}
		
		/**
		 * 以四舍五入的方式随机一个整数
		 */
		public static function randRangeFloor(min:Number, max:Number):int 
		{
			var randomNum:int = Math.round(Math.random() * (max - min + 1)) + min;
			return randomNum;
		}
		
		/**
		 * 随机一个Number型整数
		 */
		public static function randRangeNumber(min:Number, max:Number,length:uint = 2):Number 
		{
			var randomNum:Number = Math.random() * (max - min + 1) + min;
			return Number(randomNum.toFixed(length));
		}
		
		/**
		 * 随机一个Int型整数
		 */
		public static function randRangeInt(min:Number, max:Number):int {
			var randomNum:int = int(Math.random() * (max - min + 1)) + min;
			return randomNum;
		}
	}
}